The present invention provides a valuable solution to problems which may occur in the transmission of data on a balanced serial link. The serial link may be a fiber optic link or may be comprised of conventional copper conductors. In the transmission of digital information over such a link, it is common to use 10 bit link characters to represent bytes of data and pairs of special 10 bit characters for continuous transmission sequences such as "idle" characters.
The balance of such a serial link is described by the term "disparity" which defines the degree of unbalance of the link from neutral or zero. In a typical serial link, acceptable disparity states of the link are +1 and -1. Accordingly, the disparity effect of legal 10 bit link characters is either zero, +2 or -2. Thus, if the link is in a state of -1, a +2 link character will change the link to a state of +1 and vice versa. Obviously a character having a disparity effect of zero will not change the state of the link. To achieve this, each of the possible data bytes must be represented either by a single link character having zero disparity effect or by two characters; one character with a disparity of +2 and one character with a disparity of -2.
Each continuous link sequence is represented by both +2 and -2 disparity characters used alternately. The link may be always initialized in the same state when powered on (for example +1) and the serial link logic then maintains disparity on the link within the +1 and -1 limits by choosing the appropriate representation of each byte or continuous sequence. The operation of the logic to maintain this disparity, including the choice of the appropriate alternative representation of each byte or continuous sequence, is accomplished in a normal or non-transparent mode of operation wherein the digital information to be transmitted is examined during the transmission process to allow for the appropriate representations thereof to be serialized and transmitted.
Typically there are two different types of digital information that are transmitted in this non-transparent mode of operation: (1) a data frame and (2) a link level frame. A data frame is simply a frame of data, typically generated by use of an application program, such as a word of text or control code from a word processing program or information from a cell of a spreadsheet program or a field, record, or collection of records from a database program, as the case may be. A link level frame may typically contain a message associated with the operation of the serial link and is used to convey operational information from one point on the link to another point on the link. This operational information may be messages to operators of the system or may be information needed by the hardware to maintain appropriate link operation. In either case, these link level frames are defined during design and implementation of the system. Thus, there is a finite number of these frames. Additional link level frames cannot be provided without hardware additions.
The present invention is necessary because it is desirable to transmit preformatted link sequences without introducing random disparity errors during the insertion of the preformatted sequence into the link character stream. Such preformatted link sequences may be additional link level frames, diagnostic frames containing intentional errors, or non-frame link test test sequences. For example, it may be desirable to send a test block of data in which the disparity of the link intentionally exceeds the acceptable limits for the purpose of testing the disparity checking circuitry in the receiving channel. In order that the results of such a test be predictable, it is imperative that no random disparity errors be introduced when transmitting the sequence. The transmission of this type of data requires a transparent mode of operation which bypasses the hardware normally used for encoding the character data of data frames or the special sequences of link level frames. Because this hardware is also the facility that generates the idle characters between transmissions, the bypassing of this hardware also loses the ability to insure that the first idle character following a transparent mode transmission has a disparity effect that is opposite to the last character in the transparent block.
It would therefore, be greatly advantageous in a serial link communication system to convey digital information in a transparent mode while maintaining correct disparity on the serial link.